package lee.vioson.ebook.ui

import androidx.compose.material3.ColorScheme
import androidx.compose.material3.darkColorScheme
import androidx.compose.material3.lightColorScheme
import androidx.compose.ui.graphics.Color

val lightColors = lightColorScheme().copy(
    primary = Color(0xFFFF89BB),
    surface = Color(0xFF18191F),
    background = Color(0xFF18191F),
    onBackground = Color(0xFFFFFFFF),
    secondary = Color(0xFFe7ca94),
    onSecondary = Color(0xFF000000),
    outline = Color(0xFFf6f2dd),
    error = Color(0xFFD15C4C)
)
val darkColors = darkColorScheme().copy(
    primary = Color(0xFFFF89BB),
    surface = Color(0xFF18191F),
    background = Color(0xFF18191F),
    onBackground = Color(0xFFFFFFFF),
    secondary = Color(0xFFe7ca94),
    onSecondary = Color(0xFF000000),
    outline = Color(0xFFf6f2dd),
    error = Color(0xFFD15C4C)
)


val lightAppColor = AppColor(
    vipColor = Color(0xFFECC88A),
    vipColorText = Color(0xFFf6f2dd),
    tabUnselectColor = Color(0xFF535E6E),
    grayIconColor = Color(0xFF7e808c),
    hintColor = Color(0xFFC5C5C5),
    inputColor = Color(0xFF333333),
    createNewTextColor = Color(0xFFb9849d),
    ossLoginIconTint = Color(0xFFd6d8da),
    loginButtonDisableContainerColor = Color(0xFF333333),
    loginButtonDisableContentColor = Color(0xFF4e4e4e),
    loginTipsTextColor = Color(0xFF5d5d5d),
    whiteText80 = Color(0xCCFFFFFF),
    amountTextColor = Color(0xFFaa889b),
    dividerColor = Color(0xFF2A2C38),
    ratingColor = Color(0xFFee8cc2),
    grayTextColor = Color(0xFF9e9e9e),
    grayTextColor2 = Color(0xFF9D9DA2),
    redTextColor = Color(0xFFF44C3E),
    blackTextColor = Color((0xFF2F2009)),
    searchBarBorder = Color(0xFF5f5f5f),
)


val darkAppColor = AppColor(
    vipColor = Color(0xFFECC88A),
    vipColorText = Color(0xFFf6f2dd),
    tabUnselectColor = Color(0xFF535E6E),
    grayIconColor = Color(0xFF7e808c),
    hintColor = Color(0xFFC5C5C5),
    inputColor = Color(0xFF333333),
    createNewTextColor = Color(0xFFb9849d),
    ossLoginIconTint = Color(0xFFd6d8da),
    loginButtonDisableContainerColor = Color(0xFF333333),
    loginButtonDisableContentColor = Color(0xFF4e4e4e),
    loginTipsTextColor = Color(0xFF5d5d5d),
    whiteText80 = Color(0xCCFFFFFF),
    amountTextColor = Color(0xFFaa889b),
    dividerColor = Color(0xFF2A2C38),
    ratingColor = Color(0xFFee8cc2),
    grayTextColor = Color(0xFF9e9e9e),
    grayTextColor2 = Color(0xFF9D9DA2),
    redTextColor = Color(0xFFF44C3E),
    blackTextColor = Color((0xFF2F2009)),
    searchBarBorder = Color(0xFF5f5f5f),
)

val lightColorConfig = AppColorConfig(
    colorScheme = lightColors,
    appColor = lightAppColor
)

val darkColorConfig = AppColorConfig(
    colorScheme = darkColors,
    appColor = darkAppColor
)

data class AppColorConfig(
    val colorScheme: ColorScheme,
    val appColor: AppColor
)

data class AppColor(
    val vipColor: Color,
    val vipColorText: Color,
    val tabUnselectColor: Color,
    val grayIconColor: Color,
    val hintColor: Color,
    val inputColor: Color,
    val createNewTextColor: Color,
    val ossLoginIconTint: Color,
    val loginButtonDisableContainerColor: Color,
    val loginButtonDisableContentColor: Color,
    val loginTipsTextColor: Color,
    val whiteText80: Color,
    val amountTextColor: Color,
    val dividerColor: Color,
    val ratingColor: Color,
    val grayTextColor: Color,
    val grayTextColor2: Color,
    val redTextColor: Color,
    val blackTextColor: Color,
    val searchBarBorder: Color
)
